﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;

namespace WCFServer
{
    // 注意: 使用“重构”菜单上的“重命名”命令，可以同时更改代码和配置文件中的接口名“IService1”。
    [ServiceContract]
    public interface IServiceTR
    {

        //[OperationContract]
        //string GetData(int value);

        //[OperationContract]
        //CompositeType GetDataUsingDataContract(CompositeType composite);

        // TODO: 在此添加您的服务操作

        #region 过站软件使用的接口
            //写测试数据
        [OperationContract]
        string InsertTestTop(string value);
        //[OperationContract]
        //string InsertTestSecond(string value);
        [OperationContract]
        string SelectTestTop(string value);
        //[OperationContract]
        //string SelectTestSecond(string value);

        //        //[OperationContract]
        ////string InsertTestThird(string value);

        //判断是否能够测试
        [OperationContract]
        string CanStart(string value);

        //写工位的信息的接口
        [OperationContract]
        string InsertStation(string value);

        [OperationContract]
        string SelectStationCount(string value);

        [OperationContract]
        string SelectStation(string value);

        [OperationContract]
        string UpdateStation(string value);

        [OperationContract]
        string SelectNode(string value);

        [OperationContract]
        string InsertNode(string value);

        [OperationContract]
        string SelectNodeCount(string value);

        [OperationContract]
        string UpdateNode(string value);

        [OperationContract]
        string DeleteNode(string value);

        [OperationContract]
        string UpdateProduct(string value);

        [OperationContract]
        string InsertProduct(string value);

        [OperationContract]
        string SelectProductCount(string value);

        [OperationContract]
        string SelectProduct(string value);

        [OperationContract]
        string InsertProcess(string value);

        [OperationContract]
        string SelectProcess(string value);

        [OperationContract]
        string SelectProcessCount(string value);
        #endregion

        #region 装盒表
        [OperationContract]
        string SelectBoxModem(string value);

        [OperationContract]
        string SelectBoxModemCount(string value);//查询产品数量

        [OperationContract]
        string InsertBoxModem(string value);

        [OperationContract]
        string UpdateBoxModem(string value);
        #endregion

        #region 出货数据表
        [OperationContract]
        string SelectPacking(string value);

        [OperationContract]
        string SelectPackingCount(string value);

        [OperationContract]
        string UpdatePacking(string value);

        [OperationContract]
        string InsertPacking(string value);
        #endregion

        #region Modem数据库
        [OperationContract]
        string SelectDeviceData(string value);

        [OperationContract]
        string SelectDeviceDataCount(string value);

        [OperationContract]
        string UpdateDeviceData(string value);

        [OperationContract]
        string InsertDeviceData(string value);

        [OperationContract]
        string SelectDeviceType(string value);

        [OperationContract]
        string UpdateDeviceType(string value);

        [OperationContract]
        string InsertDeviceType(string value);

        [OperationContract]
        string SelectBosaData(string value);

        [OperationContract]
        string SelectBosaDataCount(string value);

        [OperationContract]
        string UpdateBosaData(string value);

        [OperationContract]
        string InsertBosaData(string value);

        [OperationContract]
        string InsertYcdDevice(string value);

        [OperationContract]
        string UpdateYcdDevice(string value);

        [OperationContract]
        string SelectYcdDevice(string value);

        [OperationContract]
        string SelectYcdDeviceCount(string value);

        #endregion

        #region Flow_Group
        [OperationContract]
        string SelectFlowGroup(string value);

        [OperationContract]
        string InsertFlowGroup(string value);

        [OperationContract]
        string UpdateFlowGroup(string value);

        [OperationContract]
        string SelectFlowGroupCount(string value);
        #endregion

        #region 流程相关接口
        [OperationContract]
        string SelectFlow(string value);

        [OperationContract]
        string InsertFlow(string value);

        [OperationContract]
        string UpdateFlow(string value);

        [OperationContract]
        string SelectFlowCount(string value);
        #endregion

        #region  SN号码（包装SN/产品SN）
        //[OperationContract]
        //string GetMinProductSN(string value);//传入产线ID，获得没有分配的最小SN信息，使用存储过程
        //[OperationContract]
        //string GetMinBoxSn(string value);//传入产线ID，获取没有分配的最小产品SN，使用存储过程
        //[OperationContract]
        //string GetPackingProductSn(string value);//传入产线ID，获得能够装箱的SN号码

        //[OperationContract]
        //string DistrubiteSn(string value);//传入产线ID和需要的砧板数量
        //[OperationContract]
        //string SelectViewSnList(string value);//查询SN分配情况

        [OperationContract]
        string SelectProvince(string value);//读取省份信息表
        [OperationContract]
        string SelectProductSn(string value);
        [OperationContract]
        string SelectProductSnCount(string value);
        [OperationContract]
        string UpdateProductSn(string value);

        [OperationContract]
        string SelectProductSnLog(string value);
        [OperationContract]
        string SelectProductSnLogCount(string value);
        #endregion

        #region 订单 ORDER
        [OperationContract]
        string SelectOrder(string value);
        [OperationContract]
        string SelectOrderCount(string value);
        [OperationContract]
        string UpdateOrder(string value);
        [OperationContract]
        string InsertOrder(string value);
        #endregion

        #region Line产线

        [OperationContract]
        string SelectLine(string value);

        [OperationContract]
        string UpdateLine(string value);

        [OperationContract]
        string InsertLine(string value);

        [OperationContract]
        string SelectCountLine(string value);
        #endregion

        #region worker员工
        [OperationContract]
        string SelectWorker(string value);

        [OperationContract]
        string SelectCountWorker(string value);

        [OperationContract]
        string InsertWorker(string value);

        [OperationContract]
        string UpdateWorker(string value);
        #endregion

        #region software软件版本信息
        [OperationContract]
        string SelectSoftware(string value);//传入软件名称，获得软件具体信息（包括名称/版本号码/更新地址/更新时间等信息）
        #endregion

        #region 数据统计使用接口
        [OperationContract]
        string SelectProductCountData(string value);
        [OperationContract]
        string SelectProductCountDataCount(string value);
        #endregion

        #region 友创达MAC
        [OperationContract]
        string GetYcdMac(string value);
        #endregion

        #region 执行SQL语句
        [OperationContract]
        int ExecuteSQL(string value);

        [OperationContract]
        string ExecuteReturnSQL(string value);

        [OperationContract]
        string SelectJson(string value);
        #endregion
    }

}
